package com.xunlai.infra.permission.manager.web.service;

import com.xunlai.infra.permission.common.exception.PermissionBusinessException;
import com.xunlai.infra.permission.manager.web.vo.BasePageRespVo;
import com.xunlai.infra.permission.manager.web.vo.position.CreatePositionReqVo;
import com.xunlai.infra.permission.manager.web.vo.position.PositionListVo;
import com.xunlai.infra.permission.manager.web.vo.position.SearchPositionReqVo;
import com.xunlai.infra.permission.manager.web.vo.position.UpdatePositionReqVo;

/**
 * @author liang
 * @date 12/21/22 9:30 AM
 */
public interface PositionService {

    Long createPosition(CreatePositionReqVo createPositionReqVo) throws PermissionBusinessException;

    void updatePosition(UpdatePositionReqVo updatePositionReqVo) throws PermissionBusinessException;

    void deletePosition(Long id, boolean force) throws PermissionBusinessException;

    BasePageRespVo<PositionListVo> pageListPosition(SearchPositionReqVo searchPositionReqVo,Integer pageNum,Integer pageSize);

}
